{%block curriculum_jquery%}
<script >
// Obtiene el div que contiene la colección de etiquetas
//var collectionHolder = $('#content_data ul');
    var domicilioCount = 0;
    $('table[data-prototype]').each(function(i, e) {
        var collectionHolder = $(e);

// configura una enlace "Agregar una etiqueta"
        var $addTagLink = $('<a href="#" class="btn btn-default btn-sm"><span class="glyphicon glyphicon-plus-sign"></span> Agregar</a>');
        var $newLinkLi = $('<li></li>').append($addTagLink);



        jQuery(document).ready(function() {            
            collectionHolder.find('.action').each(function() {
                PreAddTagFormDeleteButton($(this));
            });

// Añade el ancla "Agregar una etiqueta" y las etiquetas li y ul
            collectionHolder.append($newLinkLi);

            $addTagLink.on('click', function(e) {
// evita crear el enlace con una "#" en la URL
                e.preventDefault();

// añade una nueva etiqueta form (ve el siguiente bloque de código)
                addTagForm(collectionHolder, $newLinkLi);
            });
        });

    });
    function addTagForm(collectionHolder, $newLinkLi) {
        if (collectionHolder.attr('class') == 'domicilio') {
            domicilioCount++;
            if (domicilioCount > 2) {
                domicilioCount--;
                return false;
            }
        }

// Obtiene el data-prototype explicado anteriormente
        var prototype = collectionHolder.attr('data-prototype');

// cuenta las entradas actuales en el formulario (p. ej. 2),
// lo usa como el nuevo índice (p. ej. 2)
        var newIndex = collectionHolder.find(':input').length;


// Reemplaza el '__name__' en el prototipo HTML para que
// en su lugar sea un número basado en cuántos elementos hay
        var newForm = prototype.replace(/__name__/g, newIndex);

// Muestra el formulario en la página en un elemento li,
// antes del enlace 'Agregar una etiqueta'
        var $newFormLi = $('<tr></tr>').append(newForm);


        if ($newLinkLi.parent('table').find('tr:last')[0]) {
            $newLinkLi.parent('table').find('tr:last').after($newFormLi);
        } else {
            $newLinkLi.parent('table').prepend($newFormLi);
        }
{#        $newLinkLi.before($newFormLi);#}
        addTagFormDeleteButton($newFormLi);
{#            addTagFormDeleteLink($newFormLi);#}
    }

    function PreAddTagFormDeleteButton($tagFormLi) {
{#        $(document).on('click', '.btn-remove', function(e) {#}
        var $removeFormA = $('<a class="btn btn-default btn-sm btn-remove" href="#"><span class="glyphicon glyphicon-remove-sign"></span></a>');

        $($tagFormLi).append($removeFormA);

        $removeFormA.on('click', function(e) {
// evita crear el enlace con una "#" en la URL
            e.preventDefault();

// quita el li de la etiqueta del formulario
            $tagFormLi.parent('tr').remove();

{#            console.log(domicilioCount);#}
            domicilioCount--;

        });
    }

    function addTagFormDeleteButton($tagFormLi) {
{#        $(document).on('click', '.btn-remove', function(e) {#}
        var $removeFormA = $('<a class="btn btn-default btn-sm btn-remove" href="#"><span class="glyphicon glyphicon-remove-sign"></span></a>');
        $($tagFormLi).find('.action').append($removeFormA);

        $removeFormA.on('click', function(e) {
// evita crear el enlace con una "#" en la URL
            e.preventDefault();

// quita el li de la etiqueta del formulario
            $tagFormLi.remove();

{#            console.log(domicilioCount);#}
            domicilioCount--;

        });
    }


    function addTagFormDeleteLink($tagFormLi) {
        var $removeFormA = $('<a href="#" class="btn btn-default btn-sm">Eliminar</a>');
        $tagFormLi.append($removeFormA);

        $removeFormA.on('click', function(e) {
// evita crear el enlace con una "#" en la URL
            e.preventDefault();

// quita el li de la etiqueta del formulario
            $tagFormLi.remove();


            domicilioCount--;


        });
    }

    $(document).on('change', '.province_selector', function() {
        var $this = $(this);
        var data = {
            province_id: $this.val()
        };

        $.ajax({
            type: 'post',
            url: '{{ path("select_localidades") }}',
            data: data,
            success: function(data) {
                var $address = $this.closest('tr');
                $address.find('.city_selector').html(data);
            }
        });
    });

    $(document).on('change', '.area_selector', function() {
        var $this = $(this);

        var data = {
            area_id: $this.val(),
        };

        $.ajax({
            type: 'post',
            url: '{{ path("select_subareas") }}',
            data: data,
            success: function(data) {

                var $address = $this.closest('.conocimientos');
                $address.find('.subArea_selector').html(data);
            }
        });
    });

    $(document).on('click', '#calcular', function() {
//function cuil_cuit() {
//Defino el si se trata de un hombre, mujer o sociedad.
//var genero = "hombre";
        var genero = $("#curriculum_personas_persona_sexo option:selected").html();
//Defino el número de documento o de sociedad.
        var documento = $("#curriculum_personas_persona_dni").val();

        /*
         Verifico que el documento tenga exactamente ocho números y que
         la cadena no contenga letras.
         */
        if ((documento.length != 8) || (isNaN(documento))) {
//Muestro un error en caso de no serlo.
            alert("El número de documento ingresado no es correcto.")
        } else {
//Defino el valor del prefijo.
            if (genero == 'Masculino') {
                var AB = '20';
            } else if (genero == 'Femenino') {
                var AB = '27';
            } else {
                var AB = '30';
            }

            /*
             Los números (excepto los dos primeros) que le tengo que
             multiplicar a la cadena formada por el prefijo y por el
             número de documento los tengo almacenados en un arreglo.
             */
            var multiplicadores = new Array('3', '2', '7', '6', '5', '4', '3', '2');

//Realizo las dos primeras multiplicaciones por separado.
            var calculo = ((parseInt(AB.charAt(0)) * 5) + (parseInt(AB.charAt(1)) * 4));
            /*
             Recorro el arreglo y el número de documento para
             realizar las multiplicaciones.
             */
            for (var i = 0; i < 8; i++) {
                calculo += (parseInt(documento.charAt(i)) * parseInt(multiplicadores[i]));
            }

//Calculo el resto.
            var resto = (parseInt(calculo)) % 11;

            /*
             Llevo a cabo la evaluación de las tres condiciones para
             determinar el valor de C y conocer el valor definitivo de
             AB.
             */
            if ((genero != 'sociedad') && (resto <= 1)) {
                if (resto == 0) {
                    var C = '0';
                } else {
                    if (genero == 'Masculino') {
                        var C = '9';
                    } else {
                        var C = '4';
                    }
                }
                AB = '23';
            } else {
                var C = 11 - resto;
            }

//Almaceno el CUIL o CUIT en una variable.
            var cuil_cuit = AB + "-" + documento + "-" + C;

//Lo muestro en la ventana del navegador.
//alert(cuil_cuit);
            $('#curriculum_personas_persona_cuit').val(cuil_cuit);
        }
    });
//}
    jQuery.noConflict();
</script>
{%endblock%}